The most controversial decision of our time is upon us. Something that I know every man and woman cares immensely about...
What platform should I use for my blog?
Seriously though, perhaps this decision is slightly less divisive than say a presidential election, but personally, I have had an internal debate raging over the past few months.
On one side, you have the content management system (CMS)/database based blog. In my opinion, the only candidate seeking to make the internet great again in this neighborhood is Wordpress. The competition, competing for my heart and mind, is the static site created using a generator or some form or fashion.
Framing my Problem
At this point I feel like its helpful for me to reframe my problem. The whole point of this search is to end up with a site capable of supporting my wife's business which needs to display her portfolio, direct traffic to her services, and support her frequent blogging. It's possible that she may someday delve into e-commerce but right now it is not a priority.
I feel it is also important for me to consider the computer literacy of the user. My wife is fairly technically savvy...she has actually taught me a lot about managing search engine optimization (SEO) but she does not like getting in the weeds as far as the framework or platform goes. She rarely uses the command line to run tools but I think I could provide her a few guides and throw a few scripts together that would make command line stuff easy for her.
In my opinion, making this assessment is vital. I've been in several situations where I was forced to manage a website simply because I was a "computer person" and nobody else knew how to manage a fancy site that some developer setup, published, and abandoned. The complexity of the site meant that it was doomed to rot and die a useless death.
On the other hand, my wife did a little digging around prior to me beginning this journey. She talked to a few web-developer type people and I was really surprised by their offerings. Perhaps it was because she was in such a preliminary stage of planning, but it seemed that most were ready to throw a canned Wordpress site together, send her a big invoice, and call it a day.
I want to give the user, my wife in this case, something that she can manage without my help 98% of the time, but I want to do this while making sure the product fits her needs.
Back to the options
For the sake of completeness, I'll mention Wix-type canned platforms for creating a site. This is what my wife is currently using for her site and it falls short of what she needs.
In general these platforms offer very limited control. It is my personal opinion that the ability to dive into a platform and manipulate it free of constraints is really valuable. For instance, my wife has had some issues getting organic traffic to her site. A search for make-up artist in city X does not readily return her site. This can be rectified by facilitating proper search engine indexing and then performing some search engine optimization. Wix indexes their sites in a standard manner and it seems that, though some revision has taken place, many search engines still don't like it. Optimizing from this point is kind of a futile effort, it is possible but it involves plug-ins and, in some cases, money.
Wordpress
I am a man who appreciates solid data. That being said I can tell you this...there are a ton of Wordpress sites smattered around the internet (<--that is not solid data). I wanted to throw some number at you with a source, but deploying websites on your platform is kind of a business so I've found it about as difficult to find solid deployment info as it is to find Presidential candidate tax information.
Maybe look here if you want some unreliable data: http://trends.builtwith.com/cms
If you want my honest opinion, I think that Wordpress is probably where we will end up. It is really envogue it seems, people like seeing alot of the same thing, and the photography/make-up/beauty industry is consumed with it. I am hesitant to jump in this direction to quickly though.
A CMS, like Wordpress, utilizes a database to store content. When a visitor accesses content over the web the database is accessed and the requested content is loaded. The database access and subsequent load times don't matter too much when one or two visitors are pulling content every hour or if link speed is not an issue , but it is hard to scale. There are means of pushing content to distribution networks but this is certainly not trivial.
Wordpress can be great if it is setup soundly and effectively, periodically maintained, and populated by an individual who does not want to dive into the weeds every time they add content. Though that fits the needs of my user/wife to some extent, it isn't very appetizing to me as I like getting in the weeds and getting everything customized and optimal. Dynamically accessing a database is great if you need it (web apps, rapidly updating content, real-time functions) but I think it creates a lot of moving parts.
Take a photography blog for example. I'm sitting in a coffee shop and just pulled one up and I can tell it was created, and is managed, using a CMS. This individual's blog was last updated almost a year ago (not rapidly updating content) and other than that its just a bunch of static pictures (no scrolling content, no widgets, nothing special). There are probably a handful of database requests and then loading periods that need to take place before I see a picture and I have to sit here and wait for it...this happens every time I click on something.
Another thing I worry about is security. I feel like, from my wondering about the internet, people don't worry about security on their blogs (and even some small business sites). There is a good on-line white paper that addresses several security topics with respect to Wordpress. What I take away from all of this is that you can't take security for granted on your blog...especially if you want to get into e-commerce.
I'll re-address this topic in a subsequent blog, but for now we will move on.
Static Blogs
When I first began my computer exploits I created a website that I wrote in html. It had some words and a few pictures...all in a straight column down the screen, it was pretty awesome. Now it seems that pages adhering to a similar concept are making a comeback.
A static blog framework utilizes templates, css, and a post to create a static html web page. This page can then be placed on a server with the pictures and other content required to display it properly. It doesn't get rendered dynamically, there are no databases, and it's size is relatively small. Additionally, these frameworks typically facilitate a great deal of customization. The themes are fairly simple, there are still plug-ins for performing many tasks, and serving this content is really easy and low cost.
As far a security goes, there really aren't any moving parts. I'm not going to say its 100% secure (you're host could get hacked, you might be using a weak password), but the attack surface of your base site is reduced.
On the downside, we are talking about some increased complexity over a longer time period. With Wordpress, the complexity is all up-front really, besides maintenance. With a static blog everything is a little more complex. Every new post requires that the site be re-rendered and all the changed files need to be updated. A service like Git-hub, that can help automate change control, is vital to the static blog.
There are numerous static blog frameworks. Take your programming language of choice and hit up Google. I currently prefer Python. This website is all rendered using Pelican. There is an online community for seeking Pelican support, but what I have found is that it is somewhat outdated or neglected. Many tech type blogs...like this one I guess...are written using a static blog. I think this contributes to the lack of updated information. When you get Pelican you pretty much get everything you need to develop away. The template files are fairly easy to manipulate as are the configuration files. I chose a theme and then messed with it to the point that its almost unrecognizable when compared to the original. I think that is pretty cool.
Github provides a service Github Pages that allows you to host small sites like these for free. Check it out!
My Choice
I have obviously made the choice to delve into the static blog first. I feel like it is a good place to learn a little bit about blogging and web presentation intricacies. Just with these two posts I have learned a great deal about serving web content, analyzing traffic with Google Analytic tools, and procrastinating. There are several guides out on the web that can lead you through getting a site like mine up. To be honest, I found that they were all flawed in some way...either outdated or erroneous, but as an aggregate they helped me get this site up. In my next post I am going to go over some lessons learned and the stuff I feel like you need to know to have a static blog of your own.